4805. Равносторонний треугольник

 

Найдите периметр и площадь равностороннего треугольника.

 

Вход. Одно целое число – длина стороны n (1 ≤ n ≤ 1000) равностороннего треугольника.

 

Выход. Выведите в одной строке периметр и площадь равностороннего треугольника с 4 десятичными знаками.

 

Пример входа 1

Пример выхода 1

3

9.0000 3.8971

 

 

Пример входа 2

Пример выхода 2

8

24.0000 27.7128

 

 

РЕШЕНИЕ

элементарная геометрия

 

Анализ алгоритма

Периметр треугольника равен 3n.

Площадь треугольника равна .

 

Реализация алгоритма

Читаем входное значение n.

 

scanf("%d",&n);

 

Находим периметр и площадь.

 

p = 3 * n;

s = n * n * sqrt(3.0) / 4;

 

Выводим ответ.

 

printf("%.4lf %.4lf\n",p,s);

 

 

Реализация алгоритма - классы

 

#include <stdio.h>

#include <math.h>

 

class EqTriangle

{

public:

  int n;

  EqTriangle(int n) : n(n) {}

 

  double Perimeter(void)

  {

    return 3 * n;

  }

 

  double Area(void)

  {

    return n * n * sqrt(3.0) / 4;

  }

};

 

int n;

 

int main(void)

{

  scanf("%d", &n);

  EqTriangle tri(n);

  printf("%.4lf %.4lf\n", tri.Perimeter(), tri.Area());

  return 0;

}

 

Java реализация

 

import java.util.*;

 

public class Main

{

  public static void main(String[] args)

  {

    Scanner con = new Scanner(System.in);

    double n = con.nextDouble();

    double p = 3 * n;

    double s = n * n * Math.sqrt(3) / 4;

    //System.out.printf(Locale.US,"%.4f %.4f\n",p,s);     

    System.out.println(p + " " + s);

    con.close();

  }

}

 

Java реализация класс

 

import java.util.*;

 

class EqTriangle

{

  int n;

  public EqTriangle(int n)

  {

    this.n = n;

  }

 

  public double Perimeter()

  {

    return 3 * n;

  }

 

  public double Area()

  {

    return n * n * Math.sqrt(3.0) / 4;

  }

};

 

public class Main

{

  public static void main(String[] args)

  {

    Scanner con = new Scanner(System.in);

    int n = con.nextInt();

    EqTriangle a = new EqTriangle(n);

  

    System.out.println(a.Perimeter() + " " + a.Area());

    con.close();

  }

}